// SSUAM.cpp : 定义 DLL 的初始化例程。
//

#include "UserAccountManager.h"

SSUserPermission::SSUserPermission() {}

SSUserPermission::~SSUserPermission() {}

void SSUserPermission::SetValue(const char* szPermIndex,
                                const char* szPermValue) {
  if (NULL == szPermIndex || NULL == szPermValue) return;

  m_list[std::string(szPermIndex)] = szPermValue;
}

const char* SSUserPermission::GetValue(const char* szPermIndex) {
  if (NULL == szPermIndex) {
    return "";
  }
  // std::string sIndex(szPermIndex);

  std::map<std::string, std::string>::iterator iter = m_list.find(szPermIndex);
  if (m_list.end() == iter) {
    return "";
  } else {
    return iter->second.c_str();
  }
  // return m_list[sIndex].c_str();
}

void SSUserPermission::SetStatus(const xQBUserpermApplyData& data) {
  if (data.m_functionCode[0] == '\0') return;
  m_status[data.m_functionCode] = data;
  return;
}

bool SSUserPermission::GetStatus(const char* szPermIndex,
                                 xQBUserpermApplyData& data) {
  if (!szPermIndex || strlen(szPermIndex) <= 0) return false;
  std::map<std::string, xQBUserpermApplyData>::iterator it =
      m_status.find(szPermIndex);
  if (it == m_status.end()) return false;
  data = it->second;
  return true;
}